1. Field of the Invention
The present invention relates to an image processing apparatus and a method of processing image data, in which image data is written to storage devices with redundant parity data.
2. Description of the Related Art
The manipulation of video data within a computer processing environment is well known and over recent years the power of computer systems has increased, large random access memory arrays have become competitively priced and it has become possible to provide modestly priced disk storage by using an array of relatively inexpensive disks with the provision of redundant parity information. Computer systems of this type are usually configured to manipulate pixel data represented as red green blue (RGB) samples within operating systems such as OpenGL. Pixel locations within an image frame are addressed such that data transfers may take place and data manipulations may be performed upon video data in a manner substantially similar to the manipulation of all types of data within a computer system.
A problem with manipulating video data in a computer environment is that often the video data is originally sourced from conventional video equipment where images are supplied sequentially in a video stream in real-time to define a raster. Problems therefore arise in terms of converting between these standards. In particular, video devices are configured to operate in real-time therefore it is preferable for a video transfer to continue in real-time once it has been initiated thereby optimising the operation of video equipment.
A solution to this problem is described in British patent number 2 312 319B (U.S. patent application Ser. No. 08/843,282, assigned to the present Assignee). In the disclosed system, purpose-built hardware provides an interface between a video environment and a computer environment and video data stored on a computer system takes the form of RGB data with parity. In addition, if a disk failure occurs, it is possible for the lost data to be regenerated (a process usually referred to as “healing”) automatically as data is read from the disks during normal operation. However, if no disk failures occur, the data remains in protected form and no additional measures are required in order to generate parity information.
The need to construct purpose-built hardware can be eliminated if computer systems are provided with appropriate interface cards to facilitate data transfers. A preferred computer system for operating upon high definition digital video is the ONYX 2 produced by Silicon Graphics Inc. This system is now available with a high definition video card therefore it is possible to transfer high definition digital video signals into the computer system in real-time without additional bespoke circuitry. However, problems occur if, in addition to receiving and storing the incoming data, attempts are also made to perform RAID calculations so as to ensure that protected data is written to storage. It is highly undesirable to disrupt the transfer of video information to the computer system therefore a known approach to this problem is to provide purpose-built hardware RAID configurations for writing the information to disk. This introduces two significant disadvantages. Firstly, additional hardware is required thereby again adding to overall system costs. Secondly, hardware RAID systems are relatively inflexible and need to be set-up for a particular type of data storage.
An advantageous approach to performing RAID calculations on the host processor is described in United Kingdom patent number 2 312 316B (U.S. patent application Ser. No. 08/838,738) assigned to the present Assignee. In particular, the size of a particular input frame is assessed and an optimum number of drives is allocated for the striping of data. This approach also facilitates the storage of data at differing definitions, as is often required in image processing systems. In particular, when operating at high bandwidths, it is preferable to store the data at reduced bandwidth in addition to its full bandwidth version as a sequence of images often referred to as “proxies”. The provision of these proxies allows manipulations and effects to be perceived in real-time, whereafter similar processes may be performed on the full bandwidth data effectively off-line. Thus, when performing manipulations upon high definition video, it is known to generate proxies at standard video definition (NTSC) and similarly, when processing standard bandwidth video upon less well equipped machines it is known to generate, store and process proxies of reduced bandwidth in both the horizontal and vertical dimension.